package com.hzeport.bgs22emduty.entity;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.hzeport.bgs22emduty.common.base.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

@Data
@EqualsAndHashCode(callSuper = true)
@TableName("EMDU_SCREEN_CHECK")
@ApiModel(value = "大屏-值班抽查表")
public class ScreenCheck extends BaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "关区GUID，源自H4A")
    @TableField(value = "CUSTOM_ID")
    @JsonProperty(value = "customId")
    private String customId;

    @ApiModelProperty(value = "关区中文名称")
    @TableField(value = "CUSTOM_NAME")
    @JsonProperty(value = "customName")
    private String customName;

    @ApiModelProperty(value = "抽查时间")
    @TableField(value = "CHECK_TIME")
    @JsonProperty(value = "checkTime")
    private LocalDateTime checkTime;

    @ApiModelProperty(value = "带班处领导抽查情况：1. 在；0.不在")
    @TableField(value = "TOTAL_LEADER_RESULT")
    @JsonProperty(value = "totalLeaderResult")
    private String totalLeaderResult;

    @ApiModelProperty(value = "带班关领导抽查情况：1. 在；0.不在")
    @TableField(value = "TOTAL_MAIN_LEADER_RESULT")
    @JsonProperty(value = "totalMainLeaderResult")
    private String totalMainLeaderResult;

    @ApiModelProperty(value = "总署电话情况：1.有；0.没有")
    @TableField(value = "TOTAL_PHONE_RESULT")
    @JsonProperty(value = "totalPhoneResult")
    private String totalPhoneResult;

    @ApiModelProperty(value = "国务院电话情况：1.有；0.没有")
    @TableField(value = "GWY_PHONE_RESULT")
    @JsonProperty(value = "gwyPhoneResult")
    private String gwyPhoneResult;

    @ApiModelProperty(value = "突发事件情况：1.有；0.没有")
    @TableField(value = "SUDDEN_EVENT_RESULT")
    @JsonProperty(value = "suddenEventResult")
    private String suddenEventResult;

    @ApiModelProperty(value = "内部人员新冠情况：1.有；0.没有")
    @TableField(value = "INNER_XG_RESULT")
    @JsonProperty(value = "innerXgResult")
    private String innerXgResult;

    @ApiModelProperty(value = "值班检查情况：1.有；0.没有")
    @TableField(value = "DUTY_WORK_CHECK_RESULT")
    @JsonProperty(value = "dutyWorkCheckResult")
    private String dutyWorkCheckResult;

    @ApiModelProperty(value = "值班培训情况：1.有；0.没有")
    @TableField(value = "DUTY_WORK_TRAIN_RESULT")
    @JsonProperty(value = "dutyWorkTrainResult")
    private String dutyWorkTrainResult;

    @ApiModelProperty(value = "值班人")
    @TableField(value = "DUTY_PERSON")
    @JsonProperty(value = "dutyPerson")
    private String dutyPerson;

    @ApiModelProperty(value = "抽查人")
    @TableField(value = "CHECK_PERSON", updateStrategy = FieldStrategy.IGNORED)
    @JsonProperty(value = "checkPerson")
    private String checkPerson;

    @ApiModelProperty(value = "抽查人工号")
    @TableField(value = "CHECK_PERSON_NO")
    @JsonProperty(value = "checkPersonNo")
    private String checkPersonNo;

    @TableField(value = "REMARK")
    @JsonProperty(value = "remark")
    private String remark;

    @ApiModelProperty(value = "值班人工号")
    @TableField(value = "DUTY_PERSON_NO")
    @JsonProperty(value = "dutyPersonNo")
    private String dutyPersonNo;

    @ApiModelProperty(value = "抽查类型")
    @TableField(value = "CHECK_TYPE")
    @JsonProperty(value = "checkType")
    private String checkType;

    @ApiModelProperty(value = "批次")
    @TableField(value = "BATCH_NO")
    @JsonProperty(value = "batchNum")
    private String batchNum;

    @ApiModelProperty(value = "其他问题")
    @TableField(value = "OTHER_QUESTION")
    @JsonProperty(value = "otherQuestion")
    private String otherQuestion;

    @ApiModelProperty(value = "原因ID，关联 大屏-抽查原因表 SCREEN_CHECK_REASON 主键ID")
    @TableField(value = "REASON_ID")
    @JsonProperty(value = "reasonId")
    private String reasonId;

    @TableField(exist = false)
    private String reason;

    @ApiModelProperty(value = "处级领导名称")
    @TableField(value = "CJ_NAME")
    private String cjName;

    @ApiModelProperty(value = "管理者名称")
    @TableField(value = "MANAGER_NAME")
    private String managerName;

}
